package com.itany.corejava.code08_常用类.object;

/**
 * @author MissChen
 * @version 1.0
 * @date 2023 年11月09日 9:30
 */
public class TestEquals {
    public static void main(String[] args) {
        Person person=new Person("alice",20);
        Person person2=new Person("alice",20);
        System.out.println(person==person2);//false
        System.out.println(person.equals(person2));//false
        int i=1;//基本数据类型
        int i2=1;//基本数据类型
        System.out.println(i==i2);//true
        System.out.println("----------String中的equals方法------------");
        String s1=new String("aaa");
        String s2=new String("aaa");

        //==比较的是栈中地址的值，所以为false
        System.out.println(s1==s2);//false

        //String重写了equals方法，此时比较的是堆中的具体的字符串的值，忽略了地址
        System.out.println(s1.equals(s2));//true

        System.out.println("---------Person类中重写equals方法---------");
        System.out.println(person.equals(person2));;



    }
}
